﻿using System;
using System.Collections.Generic;
using System.Text;

namespace Pixysoft.Framework.Configurations
{
    public interface IXmlConstraintPropertyFactory<T>
    {
        /// <summary>
        /// 大于条件
        /// </summary>
        /// <param name="value"></param>
        void Great(T value);

        /// <summary>
        /// 大于等于条件
        /// </summary>
        /// <param name="value"></param>
        void GreatEqual(T value);

        /// <summary>
        /// 小于条件
        /// </summary>
        /// <param name="value"></param>
        void Less(T value);

        /// <summary>
        /// 小于等于条件
        /// </summary>
        /// <param name="value"></param>
        void LessEqual(T value);

        /// <summary>
        /// 等于条件
        /// </summary>
        /// <param name="value"></param>
        void Equal(T value);

        /// <summary>
        /// 不等于条件
        /// </summary>
        /// <param name="value"></param>
        void NotEqual(T value);


        /// <summary>
        /// 大于条件
        /// </summary>
        /// <param name="value"></param>
        void Great(T value, string format);

        /// <summary>
        /// 大于等于条件
        /// </summary>
        /// <param name="value"></param>
        void GreatEqual(T value, string format);

        /// <summary>
        /// 小于条件
        /// </summary>
        /// <param name="value"></param>
        void Less(T value, string format);

        /// <summary>
        /// 小于等于条件
        /// </summary>
        /// <param name="value"></param>
        void LessEqual(T value, string format);

        /// <summary>
        /// 等于条件
        /// </summary>
        /// <param name="value"></param>
        void Equal(T value, string format);

        /// <summary>
        /// 不等于条件
        /// </summary>
        /// <param name="value"></param>
        void NotEqual(T value, string format);
    }
}
